import matplotlib

matplotlib.use('TkAgg')  # 或者根据你的系统选择合适的后端
import matplotlib.pyplot as plt
from matplotlib import rcParams

rcParams['font.family'] = 'STHeiti'  # Mac
# rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei', 'SimSun', 'FangSong', 'KaiTi']
rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

"""
折线图 plot
条形图/柱状图 barh/bar
饼图  pie
散点图 scatter
箱线图 boxplot
多个图标
组合图
"""

# 饼图
# 创建图表并创建
plt.figure(figsize=(10, 8))
things = ['睡觉', '娱乐', '学习', '运动', '其他']
times = [8, 4, 2, 1, 9]
colors = ['#66b3ff', '#99ff99', '#ffcc99', '#ff9999', '#ff4499']

# 绘制饼图
# plt.pie(times,
#         labels=things,
#         autopct='%1.1f%%',
#         startangle=90,
#         colors=colors
#         )

# 绘制爆炸式饼图
explode = [0, 0, 0.1, 0, 0]
plt.pie(times,
        labels=things,
        autopct='%1.1f%%',
        startangle=240,
        colors=colors,
        explode=explode,
        shadow=True
        )

# 绘制圆环式饼图
# plt.pie(times,
#         labels=things,
#         autopct='%1.1f%%', startangle=90,
#         colors=colors,
#         wedgeprops={'width': 0.6},  # 设置圆环的宽度
#         pctdistance=0.6
#         )
# plt.text(0, 0, '总计\n100%', ha='center', va='center', fontsize=10)




# 添加标题和标签
plt.title('周末一天的时间分布', color='r', fontsize=20)

# 添加图例
plt.legend(loc='upper left')

# 自动优化排版
plt.tight_layout()
# 显示图表
plt.show()
